Skip to content

[Issue #583] Add series dependencies#590

Closed
loudonlune wants to merge 9 commits intogetpatchwork:mainfrom
loudonlune:feature/series-dependencies
Closed

[Issue #583] Add series dependencies#590
loudonlune wants to merge 9 commits intogetpatchwork:mainfrom
loudonlune:feature/series-dependencies

Conversation

@loudonlune
Copy link
Copy Markdown
Contributor

@loudonlune loudonlune commented Jun 17, 2024

Description

Adds a new field to the Series model which represents a dependency between two series. The parser will search for "Depends-on" tags in the incoming emails and form the relationship. Patchwork clients, when applying a series with dependencies, can access this information through the API and apply the dependent series. Adds new "dependencies" and "dependents" fields to the API series detail view, and increments the API version to 1.4.

Because some projects may not want to use this feature on their instance, the "Depends-on" tag parsing is disabled by default, and can be enabled through the ENABLE_DEPENDS_ON_PARSING setting.

Related

Adds the "dependencies" and "dependents" fields to the series detail
view.

Signed-off-by: Adam Hassick <ahassick@iol.unh.edu>
Add a ManyToMany field to represent a dependency relationship between
patch series.

Signed-off-by: Adam Hassick <ahassick@iol.unh.edu>
Add a new function to parse "Depends-on" tags to the parser. The value
may either be a "reference" to a patch or series object or the web URL
to the object. For example, a reference may look like "patch-1234" or
"series-5678". When this tag is found, the parser will add the series
(or the series the patch belongs to) as a dependency to the patch series
it is creating.

Signed-off-by: Adam Hassick <ahassick@iol.unh.edu>
Some operators of Patchwork instances may not want to allow series
dependencies. By providing this setting, these operators may disable
this behavior on their instance.

Signed-off-by: Adam Hassick <ahassick@iol.unh.edu>
Add version 1.4 because new fields were added to the API.
Update the OpenAPI specification template and the API docs to reflect
the new minor version.

Signed-off-by: Adam Hassick <ahassick@iol.unh.edu>
Signed-off-by: Adam Hassick <ahassick@iol.unh.edu>
* Adds tests for the API and parser changes.
* Add new test mbox files.
* Add new patch series tests.

Signed-off-by: Adam Hassick <ahassick@iol.unh.edu>
Signed-off-by: Adam Hassick <ahassick@iol.unh.edu>
@stephenfin
Copy link
Copy Markdown
Member

I've reviewed all this on the list and am happy to keep doing so there, unless you'd rather do it here. Please let me know and optionally close this PR.

@loudonlune
Copy link
Copy Markdown
Contributor Author

I've replied to the comments on the mailing list. Next revision of this will be sent to the list as well. Thanks!

@loudonlune loudonlune closed this Jul 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support dependency relations between patch series

2 participants